草庐IT

pointers - Golang 指针

全部标签

string - 为什么使用 Golang 设置的文件权限与预期不同?

funcstringToInt(sstring)int{i,err:=strconv.Atoi(s)check(err)returni}os.FileMode(stringToInt("0777"))当不需要转换为int时(不删除前导零)通过直接设置权限:os.FileMode(0777)文件权限正确当前结果777777-r----x--x753753--wxrw---x500500-rwxrw-r--预期结果777-rwxrwxrwx753-r-xr-x-wx500-r-x------ 最佳答案 根据@AdamSmith和@Jam

http - 在golang的http请求中附加用户名和密码

到目前为止我尝试过的是现在形成的http请求是:curl-XPOSThttp://localhost:8080/v1.0l_httpClient_ptr:=http.Client{Timeout:timeout,}varl_resp_ptr*http.Responsevarl_resp_byte[]bytel_resp_ptr,r_err=l_httpClient_ptr.Post(p_url_str,"text/xml;charset=utf-8",bytes.NewBufferString(p_request_str))l_resp_byte,r_err=ioutil.ReadAl

go - 我们如何在 golang 中停止 bufio 扫描?

停止以下扫描的最佳方法是什么?outputReader:=io.MultiReader(outReader,errReader)scanner:=bufio.NewScanner(outputReader)forscanner.Scan(){scanner.Text():} 最佳答案 如果你卡在连续循环中,按ENTER无助于退出scanner.Scan()循环,那么试试ctrl+Z退出循环。下面是从控制台获取输入并打印重复行的示例代码。funcmain(){counts:=make(map[string]int)scanner:=b

parsing - Golang 解析 json 响应

这里是Go新手,我正在尝试解析来自具有以下结构的LDAP服务的响应{"isMemberOf":[“cn=group1,ou=groups,dc=example,dc=domain,dc=com",“cn=group2,ou=groups,dc=example,dc=domain,dc=com","cn=.............................................,"cn=.............................................]}我需要将所有cn=值ex:group1,group2收集到[]string中,例如[group

variables - golang 编译器说程序正在重新定义变量,还没有重新定义

编译器说每个已定义的变量都在5行后再次定义并引发错误,当然我没有在5行后重新定义所有变量,我该如何停止这个错误?这是其中一个结构的示例typeHolderstruct{NamestringHolders_needintAvailint}它声称在32之类的结构关闭后的行上有redifend我已经找到了答案 最佳答案 您应该添加一些代码并让我们确切知道您在做什么。您可能在初始化变量后使用:=而不是=。例如i:=1//useii=2//changevalueofiusing=sinceihasalreadybeendeclared//i:

Go 库 - golang 的 async.auto

在Nodejs中,我们有async.auto(http://caolan.github.io/async/docs.html#.auto),它通过拓扑排序自动管理扇出顺序。Go中是否有类似的库来管理您的请求顺序 最佳答案 你可以试试这个:https://github.com/kamildrazkiewicz/go-flow它基于channel排空(async.auto使用拓扑排序)但它的工作方式类似。 关于Go库-golang的async.auto,我们在StackOverflow上找到

php - 长时间运行的 Golang 程序和资源(文件句柄、tcp 连接等)

我有PHP背景,我对如何安全地使用Golang资源感到有点困惑。我主要担心的是,在web上下文中,使用PHP,脚本通常是短暂的(HTTP请求/响应生命周期),但使用Golang,它们应该永远运行(因为Golang程序充当Web服务器和Web同时申请)。所以,在处理数据库连接、日志文件时,我经常看到应该打开一次,而不是每个请求都打开,这是有道理的。然而,这样做有多稳定?例如,如果我打开一个数据库连接,我如何确定它不会在某个时候中断?(如果数据库出于某种原因决定终止它,或者如果我的机器失去互联网访问权限,那么当我稍后获得互联网访问权限时,连接会再次有效吗?)对于日志文件也是如此,对于PHP

optimization - 如何在 Golang 中获取指向任何数据类型值的字节指针?

我已经设法让以下函数在Go中运行。但是我想优化/概括代码,这样这个函数就会返回一个指向我传递给函数的任何值的第一个字节的指针。目前它只适用于[]uint32,但我想用它来获取起始内存地址作为许多其他类型(即byte[]、int[]、string等)的*byte。是否有更通用的方法来执行此操作,而不是将我需要处理的每一种类型都捕获为case语句?转到以下代码的Playground链接:https://play.golang.org/p/KtNTbERQGapackagemainimport("fmt""reflect""unsafe")funcToBytePointer(datainte

arrays - 我们如何在 golang 的结构中初始化结构类型的数组(存储 json 输出)

我需要初始化以下将存储json的数据结构。Attack_plans将包含多个计划,如果我遍历GeneratePlan结构,我需要存储的所有计划。typeGeneratePlanstruct{Modestring`json:"mode"`Namestring`json:"name"`Schemastring`json:"schema"`Versionstring`json:"version"`Attack_plans[]struct{Attack_plan*Attack_plan`json:"attack-plan"`}`json:"attack-plans"`}typeAttack_p

go - 在线运行golang并保存到在线文件中

我的本​​地程序现在所做的是连接到websocket并在收到消息时使用json更新本地文件。有没有办法在线运行golang程序,然后在线更新保存为json文件,我就能看到?我不确定,但我想我需要一个网络服务器?例如,程序会生成这样的网站https://www.reddit.com/r/all.json? 最佳答案 通常,大多数网站会直接在HTTP请求中生成JSON响应,它们不会将结果写入文件,然后通过HTTP提供。无论哪种方式,您都需要某种暴露于Internet的服务器。我建议您阅读有关如何使用Go中内置的HTTP服务器的信息,这样